﻿//-----------------------------------------------------------------------
// <copyright>
// This file is subject to the terms and conditions of the Microsoft Public License (MS-PL).
// See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL for more details.
// </copyright>
//----------------------------------------------------------------------- 
namespace Fulcrum.ViewModelGenerator
{
    #region Usings
    using System.Collections.Generic;
    #endregion Usings

    public interface IViewModelConfiguration
    {
        string Name { get; }
        string Namespace { get; }
        string Location { get; }
        bool ProvidePropertyChangedEvent { get; }
        ICollection<string> Usings { get; }
        
        string Summary { get; }
        string Remarks { get; }
        
        ICollection<IViewModelPropertyConfiguration> Properties { get; }
        ICollection<IViewModelPassThroughPropertyConfiguration> PassThroughProperties { get; }
        ICollection<IViewModelAttachedPropertyConfiguration> AttachedProperties { get; }
        ICollection<IViewModelEventConfiguration> Events { get; }
    }
}
